// interface Alarm {
//   alert(): void
// }

// class Door {}

// class SecurityDoor extends Door implements Alarm {
//   alert() {
//     console.log('SecurityDoor alert')
//   }
// }

// class Car implements Alarm {
//   alert() {
//     console.log('Car alert')
//   }
// }

// interface Alarm {
//   alert(): void
// }

// interface Light {
//   lightOn(): void
//   lightOff(): void
// }

// class Car implements Alarm, Light {
//   alert() {
//     console.log('Car alert')
//   }
//   lightOn() {
//     console.log('Car light on')
//   }
//   lightOff() {
//     console.log('Car light off')
//   }
// }
// interface Alarm {
//   alert(): void
// }

// interface LightableAlarm extends Alarm {
//   lightOn(): void
//   lightOff(): void
// }

class Point {
  x: number
  y: number
  constructor(x: number, y: number) {
    this.x = x
    this.y = y
  }
}

interface Point3d extends Point {
  z: number
}

let point3d: Point3d = { x: 1, y: 2, z: 3 }
